package com.atguigu.mybatis.mapper;

import com.atguigu.mybatis.pojo.Emp;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author superHao
 * @date 2022/12/20
 */
public interface EmpMapper {
    /**
     * 查询所有员工信息
     *
     * @return {@link List}<{@link Emp}>
     */
    List<Emp> getAllEmp();

    /**
     * 查询所有员工信息(旧)
     *
     * @return {@link List}<{@link Emp}>
     */
    List<Emp> getAllEmpOld();

    /**
     * 查询员工以及员工对应的部门信息
     *
     * @param eid
     * @return {@link Emp}
     */
    Emp getEmpAndDept(@Param("eid") Integer eid);

    /**
     * 通过分步查询员工以及员工所对应的部门信息
     * 第一步：查询员工信息
     *
     * @param eid
     * @return {@link Emp}
     */
    Emp getEmpAndDeptByStepOne(@Param("eid") Integer eid);

    /**通过分步查询部门以及部门所对应的员工信息
     * 第二步：查询员工信息
     * @param did
     * @return {@link List}<{@link Emp}>
     */
    List<Emp> getDeptAndEmpByStepTwo(@Param("did") Integer did);
}
